package com.hua.base;

public class InterfaceImplementDemo implements InterfaceDemo{
    @Override
    public void func1() {
        System.out.println("func1");
    }

    @Override
    public void func2() {
        System.out.println("func3"); //重写了方法
    }


    public static void main(String[] args) {
        InterfaceImplementDemo demo = new InterfaceImplementDemo();
        demo.func1();
        demo.func2();
        System.out.println(InterfaceImplementDemo.x);
    }
}
/*
抽象类和接口的区别：
1-从设计层面上看，抽象类提供了一种 IS-A 关系，需要满足里式替换原则，即子类对象必须能够替换掉所有父类对象。而接口更像是一种 LIKE-A 关系，它只是提供一种方法实现契约，并不要求接口和实现接口的类具有 IS-A 关系。
2-从使用上来看，一个类可以实现多个接口，但是不能继承多个抽象类。
3-接口的字段只能是 static 和 final 类型的，而抽象类的字段没有这种限制。
4-接口的成员只能是 public 的，而抽象类的成员可以有多种访问权限。


 */